ヘッダーをスキップ
Oracle TimesTen In-Memory Database C開発者およびリファレンス・ガイド
リリース7.0
E05164-03
  目次へ
目次
索引へ
索引

前へ
前へ
次へ
次へ
 

エラーのチェック

アプリケーションでは、コールのたびにエラーおよび警告をチェックする必要があります。これによって、開発およびデバッグ時に時間および労力が大幅に節約されます。TimesTenのインストール・メディアに含まれているデモ・プログラムには、エラー・チェックの例が含まれています。1回のコールで、複数のエラーが返される場合もあります。アプリケーションは、すべてのエラーが返されるように作成する必要があります。

エラーは、エラー番号またはtt_Err文字列のいずれかを使用して確認できます。TimesTenエラー(tt_Err 文字列および関連する番号の両方)の完全なリストについては、install_dir/include/tt_errCode.hファイルを参照してください。各メッセージについては、『Oracle TimesTen In-Memory Databaseエラー・メッセージおよびSNMPトラップ』のエラーおよび警告のリストに関する項を参照してください。

標準のODBC関数をコールした後、リターン・コードを確認します。リターン・コードがSQL_SUCCESSでない場合は、ODBCエラー処理関数(SQLError関数を使用してODBC環境ハンドルで発生したエラーを取得する関数)をコールします。

例1.7

たとえば、SQLAllocConnectなどの標準のODBC関数をコールした後、リターン・コードがSQL_SUCCESSであるかどうかを確認できます。SQL_SUCCESSではない場合は、エラー処理関数をコールしてアプリケーションを終了できます。

rc = SQLAllocConnect(henv, &hdbc);

if (rc != SQL_SUCCESS) {

  handleError(rc, henv, hdbc, hstmt, err_buf, &native_error);

  fprintf(stderr,

          "Unable to allocate a connection handle:\n%s\n",

          err_buf);

  TerminateGracefully(1);

}

エラー処理関数では、エラー・スタックからすべてのエラーが読み取られるまで、SQLError関数を繰り返しコールして、常に複数のエラーをチェックします。(SQLError から戻されるリターン・コードは SQL_NO_DATA_FOUNDです。)

一般的なODBCエラーを処理する関数の作成方法については、『Oracle TimesTen In-Memory Databaseエラー・メッセージおよびSNMPトラップ』のエラーおよび警告の取得に関する項を参照してください。